package org.lanyu.springainovel.common.dto;

import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import org.springframework.web.multipart.MultipartFile;

/**
 * 创建拆书项目请求DTO
 */
@Data
public class CreateProjectRequest {
    
    /**
     * 项目名称
     */
    @NotBlank(message = "项目名称不能为空")
    private String name;
    
    /**
     * 项目描述
     */
    private String description;
    
    /**
     * 来源类型：URL或FILE
     */
    @NotBlank(message = "来源类型不能为空")
    private String sourceType;
    
    /**
     * 来源URL（当sourceType为URL时使用）
     */
    private String sourceUrl;
    
    /**
     * 来源文件路径（当sourceType为FILE时使用）
     */
    private String sourcePath;
    
    /**
     * 系统提示词模板ID
     */
    private Long systemPromptId;
    
    /**
     * 对话模型ID
     */
    private Long modelId;
    
    /**
     * 上传的文件（当sourceType为FILE时使用）
     */
    private MultipartFile file;
}
